本发明提供了一种基于认知网络的网络流量预测方法和装置,通过对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t),对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1.一种基于认知网络的网络流量预测方法,其特征在于,所述方法包括:对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t);对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1(k),D
2(k),...D
L(k),A
L(k)};把分量{D
1(k),D
2(k),...D
L(k)}作为Elman网络的输入,k+T时刻的小波系数{D
1(k+T),D
2(k+T),...D
L(k+T)}作为输出来训练网络;把分量{A
L(k)}作为线性网络的输入,{A
L(k+T)}来作为输出来训练网络;将训练好的小波各分量{D
1(k+T),D
2(k+T),...D
L(k+T),A
L(k+T)}作为BP网络的输入,k+T时刻的原始流量时间{f(k+T)}作为网络输出,训练网络,获取预测输出。
2.根据权利要求1所述的方法,其特征在于:所述Elman网络是一种层次性反馈网络,分为输入层、中间层(隐层)、承接层和输出层四层。
3.根据权利要求1所述的方法,其特征在于:所述BP网络是一种层次性前馈网络,具有三层或三层以上的神经网络。
4.一种基于认知网络的网络流量预测装置,其特征在于,所述装置包括:第一处理模块,用于对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t);第二处理模块,用于对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1(k),D
2(k),...D
L(k),A
L(k)};第三处理模块,用于把分量{D
1(k),D
2(k),...D
L(k)}作为Elman网络的输入,k+T时刻的小波系数{D
1(k+T),D
2(k+T),...D
L(k+T)}作为输出来训练网络;第四处理模块,用于把分量{A
L(k)}作为线性网络的输入,{A
L(k+T)}来作为输出来训练网络;第五处理模块,用于将训练好的小波各分量{D
1(k+T),D
2(k+T),...D
L(k+T),A
L(k+T)}作为BP网络的输入,k+T时刻的原始流量时间{f(k+T)}作为网络输出,训练网络,获取预测输出。
5.根据权利要求4所述的装置,其特征在于:所述第三处理模块中的Elman网络是一种层次性反馈网络,分为输入层、中间层(隐层)、承接层和输出层四层。
6.根据权利要求4所述的装置,其特征在于:所述第五处理模块中的BP网络是一种层次性前馈网络,具有三层或三层以上的神经网络。
技术领域本发明涉及网络信息技术领域,特别是涉及一种基于认知网络的网络流量预测方法和装置。
背景技术认知技术是一种智能无线通信系统,它能感知周围环境,从环境中获取信息并通过实时改变诸如传输功率、载频、调制方式等参数来适应环境的变化。目前,认知技术的主要成果集中表现为认知无线电技术的发展及应用。将认知技术引入到网络系统应用中,就认知网络(Cognitivexa0Network),它是未来通信领域的一个重要研究领域。认知网络需要感知周围环境的电磁变化特征,并依据感知结果,智能决策,自动调整其设备的发射与接收参数。认知网络所要研究的关键技术包括:环境感知技术、信息挖掘技术、智能决策技术、网络重配置等。环境感知是实现通信网络认知的基础,感知的内容包括无线环境及其所处的网络环境。无线环境感知的主要研究内容有:无线环境的分析,包括对无线传播环境干扰度(Interferencexa0Temperature)的估计以及频谱空穴(Spectrumxa0Holes)的检测;信道的确认,包括对信道状态信息的估计以及对信道容量的预测,发射功率控制及动态频谱管理等。其中,频谱空穴检测是目前研究的重点,值得强调的是,频谱空穴并不能简单地通过检测某些感兴趣的频带内的信号能量得到,而需要更复杂的技术在时域,频域和空域来检测。因此,频谱空穴包含了信号的时域,空域,和频域信息等。一般来说,频谱检测技术可以分为发射源检测,合作检测和干扰检测。网络环境感知是网络环境自适应的基础。研究内容包括网络环境信息的获取、表示、融合和利用。其中,网络环境主要包括网络类型、网络拓扑、可用资源、接口协议、网络流量等影响端到端传输性能的网络工作状态。迅速准确地感知网络环境的变化,是认知网络得以发挥作用的基础。智能决策是利用人工智能,特别是专家系统(expertxa0system)的原理和技术所建立的、辅助决策的计算机软件系统,支持半结构化和非结构化问题的决策。智能决策系统主要包括决策支持系统、专家系统、机器学习、效能评价等。认知网络足一个具有智能的主体,我们将人工智能理论、机器学习、推理机制引入专用通信网络决策系统,使得专用通信网络能够实现环境自适应。它要将无线资源管理博弈论拓展到网络配置决策,并且研究智能决策的性能评价机制,根据环境分析的结果和用户输入判断决策结果是否最优,进而调整网络认知循环的各个环节。在认知网络的基础上,针对网络流量进行建模和预测研究。网络流量模型是进行网络性能分析和网络规划设计的基础,优化流量模型与预测方法有助于设计新一代网络协议、网络管理与诊断、设计高性能的路由器和负载均衡器等网络硬件设备以及提高网络的服务质量。随着网络带宽的增加以及各种网络服务的出现,以往的流量预测模型已经难以满足对现有以及将来网络流量的精确描述及预测。因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何能够创新地提出一种基于认知网络的网络流量预测方法和装置,以解决现有技术中存在的问题,为网络流量提供更为准确的模型和预测。
发明内容本发明所要解决的技术问题是提供一种基于认知网络的网络流量预测方法和装置,用以为网络流量提供更为准确的模型和预测。为了解决上述问题,本发明公开了一种基于认知网络的网络流量预测方法,所述方法包括:对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t);对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1(k),D
2(k),...D
L(k),A
L(k)};把分量{D
1(k),D
2(k),...D
L(k)}作为Elman网络的输入,k+T时刻的小波系数{D
1(k+T),D
2(k+T),...D
L(k+T)}作为输出来训练网络;把分量{A
L(k)}作为线性网络的输入,{A
L(k+T)}来作为输出来训练网络;将训练好的小波各分量{D
1(k+T),D
2(k+T),...D
L(k+T),A
L(k+T)}作为BP网络的输入,k+T时刻的原始流量时间{f(k+T)}作为网络输出,训练网络,获取预测输出。优选的,所述Elman网络是一种层次性反馈网络,分为输入层、中间层(隐层)、承接层和输出层四层。优选的,所述BP网络是一种层次性前馈网络,具有三层或三层以上的神经网络。本发明还公布了一种基于认知网络的网络流量预测装置所述装置包括:第一处理模块,用于对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t);第二处理模块,用于对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1(k),D
2(k),...D
L(k),A
L(k)};第三处理模块,用于把分量{D
1(k),D
2(k),...D
L(k)}作为Elman网络的输入,k+T时刻的小波系数{D
1(k+T),D
2(k+T),...D
L(k+T)}作为输出来训练网络;第四处理模块,用于把分量{A
L(k)}作为线性网络的输入,{A
L(k+T)}来作为输出来训练网络;第五处理模块,用于将训练好的小波各分量{D
1(k+T),D
2(k+T),...D
L(k+T),A
L(k+T)}作为BP网络的输入,k+T时刻的原始流量时间{f(k+T)}作为网络输出,训练网络,获取预测输出。优选的,所述第三处理模块中的Elman网络是一种层次性反馈网络,分为输入层、中间层(隐层)、承接层和输出层四层。优选的,所述第五处理模块中的BP网络是一种层次性前馈网络,具有三层或三层以上的神经网络。与现有技术相比,本发明具有以下优点:本发明通过对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t),对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1(k),D
2(k),...D
L(k),A
L(k)},把分量{D
1(k),D
2(k),...D
L(k)}作为Elman网络的输入,k+T时刻的小波系数{D
1(k+T),D
2(k+T),...D
L(k+T)}作为输出来训练网络,把分量{A
L(k)}作为线性网络的输入,{A
L(k+T)}来作为输出来训练网络,将训练好的小波各分量{D
L(k+T),D
2(k+T),...D
L(k+T),A
L(k+T)}作为BP网络的输入,k+T时刻的原始流量时间{f(k+T)}作为网络输出,训练网络,获取预测输出,针对以往的流量模型以及预测方法的利弊,引入LMS算法对输入样本进行预处理,再输入到接下来的小波神经网络预测模型(WNN)中,解决了现有模型的“过拟合”问题,为网络流量提供更为准确的模型和预测。
附图说明图1是本发明实施例一所述的一种基于认知网络的网络流量预测方法流程图;图2是本发明实施例一所述的神经元模型示意图;图3是本发明实施例二所述的一种基于认知网络的网络流量预测装置结构图。
具体实施方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。实施例一:参照图1,示出了本发明的一种基于认知网络的网络流量预测方法流程图,所述方法具体包括:步骤S101,对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t);最小二乘法可以用来处理一组数据,可以从一组测定的数据中寻求变量之间的依赖关系,这种函数关系称为经验公式。本实施例中所述的基于认知网络的网络流量预测方法,可以理解为Anti-overfitting预测模型,对输入样本进行最小二乘法(LMS)处理,处理后的预测样本作为输入。下面将介绍最小二乘法的精确定义及如何寻求x与y之间近似成线性关系时的经验公式。假定实验测得变量之间的n个数据(x
1,y
1),(x
2,y
2),...,(x
n,y
n),则在xOy平面上,可以得到n个点P
i(x
i,y
i)(i=1,2,...,n),这种图形称为“散点图”,从图中可以粗略看出这些点大致散落在某直线旁,我们认为x与y之间近似为一线性函数,下面介绍求解步骤。考虑函数y=ax+b,其中a和b是待定常数。如果P
i(i=1,2,...,n)在一直线上,可以认为变量之间的关系为y=ax+b。但一般说来,这些点不可能在同一直线上。记z
i=y
i-(ax
i+b),它反映了用直线y=ax+b来描述x=x
i,y=y
i时,计算值y与实际值y
i产生的偏差。当然要求偏差越小越好,但由于g
i可正可负,因此不能认为总偏差
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="68"/>时,函数y=ax|b就很好地反映了变量之间的关系,因为此时每个偏差的绝对值可能很大。为了改进这一缺陷,就考虑用
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="53"/>来代替
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="49"/>但是由于绝对值不易作解析运算,因此,进一步用
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="45"/>来度量总偏差。因偏差的平方和最小可以保证每个偏差都不会很大。于是问题归结为确定y-ax+b中的常数a和b,使
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="261"/>为最小。用这种方法确定系数a,b的方法称为最小二乘法。由极值原理得
![]()
ntent="drawing" img-format="tif" inline="yes" orientation="portrait" wi="112"/>即
∂F∂a=2Σi=1nxiyiaxib=0,]]>∂F∂b=-2Σi=1n(yi-axi-b)=0.]]>解此联立方程得
a=nΣi=1nxiyi-Σi=1nxiΣi=1nyinΣi=1nxi2-(Σi=1nxi)2,b=1nΣi=1nyi-anΣi=1nxi.]]>步骤S102,对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1(k),D
2(k),...D
L(k),A
L(k)};对于流量的小波分解和重构借助Mallet算法实现,其中关键的离散小波变换是用频率缩放后的小波函数ψ(t)以及时间平移后的尺度函数φ(t)来表示原来的信号X(t),选择适当的小波函数和尺度函数,对j,k∈Z使ψ
j,k(t)=2
j/2ψ(2
jt-k)φ
j,k(t)=2
j/2φ(2
jt-k)成为正交基,则信号X(t)可以表示为
X(t)=Σku0,kφ0,k(t)+Σj=0∞Σkwj,kψj,k(t)]]>其中:w
j,k=∫x(t)·ψ
j,k(t)dtxa0xa0xa0xa0xa0xa0u
j,k=∫x(t)·φ
j,k(t)dt并且,尺度系数和小波系数存在如下迭代关系:u
j-1,k=2
-1/2(u
j,2k+u
j,2k+1)w
j-1,k=2
-1/2(u
j,2k-u
j,2k+1)步骤S103,把分量{D
1(k),D
2(k),...D
L(k)}作为Elman网络的输入,k+T时刻的小波系数{D
1(k+T),D
2(k+T),...D
L(k+T)}作为输出来训练网络;优选的,所述Elman网络是一种层次性反馈网络,分为输入层、中间层(隐层)、承接层和输出层四层。Elman神经网络是一种层次性反馈网络,一般分为四层:输入层、中间层(隐层)、承接层和输出层,传递函数可以采用线性或非线性函数,各层连接类似于前馈网络,承接层用来记忆隐层单元前一时刻的输出值,可以认为是一个一步延时算子。该网络采用了一种增加动量项的改进的“误差逆传播算法”(BP算法),这种算法的基本思想是根据均方差函数MSE的负梯度方向来调整网络权重,加快收敛速度。其中权重调整表达式为:ΔW(t)=ηδX+αΔW(t-1)其中:W代表某层权矩阵,η为学习速率,δ为误差信号,一般有α∈(0,1)为动量系数。增加的动量项αΔW(t-1)考虑了t一1时刻的梯度方向,可以提高训练速度。由于Elman网络的内部加入了网络本身处理动态信息的能力,把该网络用作流量中非线性关系数据预测的网络单元,可以保证流量的非平稳性特征。步骤S104,把分量{A
L(k)}作为线性网络的输入,{A
L(k+T)}来作为输出来训练网络;神经网络是由大量的处理单元(神经元)互联而成的网络,神经网络的信息处理通过神经元的相互作用来实现,网络的学习速度和识别精度取决于各神经元连接权系数的动态演化过程。神经元的工作过程我们可以通过如下数学表达式来概括:
yi(t)=f{[Σi=1nwijxi(t)]-Tj}]]>其中x
i(t)表示t时刻神经元j接收的来自神经元i的输入信息,y
i(t)表示t时刻神经元j的输出信息,T
j是神经元的阈值,w
ij是神经元i到j的连接系数或称为权重,f()为转移函数。最常用的转移函数为S函数,表达式为:
f(x)=11+exp(-x)]]>目前尚未有一种万能的神经网络可以包含所有网络的功能优点,所以预测网络流量这种复杂的信号,需要采用几种网络组合的方式实现。下面简要介绍一下该模型中的三种神经网络功能和实现。线性神经网络可以由一个或多个线性神经元组成,是一种层次性前馈网络,转移函数为线性函数,学习算法是“最小均方差(LMS)算法”。如果定义我们的预测训练样本为:{p
1,t
1},{p
2,t
2},...{p
q,t
q}其中,p
q为网络输入,t
q为相应的期望输出,则本算法中定义的训练误差为:
MSE=1/qΣk=1qe(k)2=1/qΣk=1q(t(k)-p(k))2]]>步骤S105,将训练好的小波各分量{D
1(k+T),D
2(k+T),...D
L(k+T),A
L(k+T)}作为BP网络的输入,k+T时刻的原始流量时间{f(k+T)}作为网络输出,训练网络,获取预测输出。优选的,所述BP网络是一种层次性前馈网络,具有三层或三层以上的神经网络。BP神经网络是一种层次性前馈网络,具有三层或三层以上的神经网络,转移函数为S函数,采用和Elman网络一样的学习算法。对于三层网络结构隐层单元的选择,根据Kolmogorov定理,如果输入单元为N,则隐层单元通常选择2N+1个。把前两种网络预测结果简单取均值后作为BP神经网络的输入,该网络具有很好的函数逼近能力,可以减小预测流量的误差。另补充介绍的,参照图2为神经元模型示意图。其中,x
i为输入信号,w
ij表示从第j个神经元到第i个神经元的连接权值,Q
i为第i个神经元的阈值,设s
i为外部输入信号,y
i为输出信号,在上述模型中第i个神经元的变换可描述为y
i=f(∑w
ijx
j+s
i-Q
i)采用的神经元的非线性函数f(x)可以是阶跃函数、分段函数以及Sigmoid型函数。人工神经网络的处理单元间相互连接,所有的连接构成一有向图。每一连接对应于一个实数,称为连接权值,或称为权重。权值的集合可看作是长期记忆。我们用w
ij来表示神经元u
i到u
j的连接权值。可以方便地用权值矩阵W表示网络中的连接模式,W中的元素是w
ij,连接权值的类型一般分为激发和抑制形式。正的权值表示激发连接,相反,负的连接权值表示抑制连接。连接权值的连接方式是人工神经网络的特征描述。在时刻t,每一个神经元都联系着一个实数值,我们称之为神经元状态,也被叫做神经元的激励值,用x
j来表示神经元u
j的状态,用X(t)来表示神经网络的状态空间。在各种不同的神经网络类型中,状态空间可以作不同的假设。状态空间可能是联系的,也可能是离散的;可能是有界的,也可能是无界的;可能在一个实数区间上取值,也可能取有限值;最常见的情形是取二值,取0和1两种状态,或-1和1两种状态,或是取连续实数值。对于每一个神经元,都有一个输出信号,通过连接权值传送给其相连的处理单元输出信号直接依赖于处理单元的状态或激励值。这种依赖性通过输出变换函数f
j对于处理单元u
j的作用来表示。加入,我们用z
j(t)来定义时刻t神经元u
j的输出,那么:z
j(t)=f
j(x
j(t))或写成向量的形式:Z(t)=f(X(t))这里,Z(t)是神经网络的输出向量,f定义为状态向量每一个分量的对应函数。一般是在区间(0,1)上的有界函数。在每一时刻t,神经元u
j的状态一般通过目前的状态与它相邻的输出值函数g
j进行计算。函数g
j叫做状态变换函数,常用微分方程来表示,它表示网络的动力学行为。一个单元新状态的计算,依赖于目前的状态值,与它相邻单元的连接权值和输出值,它也与处理单元的阈值有关。在离散的情形,时刻t+1时处理单元的活动状态表示为方程:x
j(t+1)=g
j(x
j(t),w
j,z(t,Q
j))这里,w
j对应于权矩阵的第j行的响亮,用向量的形式,方程变为:X(t+1)=g(X(t),W,Z(t,Q))神经网络的信息处理,知识的表示体现于神经网络的连接权值模式中,对于知识的修正或学习相当于通过某种学习规则对网络存储的连接权值进行修正。人工神经网络通过连接权值存储的只是,对于环境的输入产生对应,一般的输入模式空间是离散值或模拟值,用向量a=(a
1,a
2,...a
n)表示,n是网络输入单元的个数,输出模式有同样的表示,输出变量表示为b=(b
1,b
2,...b
m),m是网络输出单元的个数。通过实际的仿真和实验可以得出,本实施例所述的方法比现有技术中WNN预测模型的曲线拟合度要好,滞后性和过拟合问题也得到了很好的解决,其对流量预测的平均误差有所降低,预测精度有所提高。实施例二:参照图3,示出了本发明的一种基于认知网络的网络流量预测装置结构图,所述装置具体包括:第一处理模块301,用于对输入信号X(t)进行最小二乘法处理,输出预测样本数据Y(t);第二处理模块302,用于对Y(t)进行小波变换,分解为不同频率成分的分量,k时刻小波变换系数序列{D
1(k),D
2(k),...D
L(k),A
L(k)};第三处理模块303,用于把分量{D
1(k),D
2(k),...D
L(k)}作为Elman网络的输入,k+T时刻的小波系数{D
1(k+T),D
2(k+T),...D
L(k+T)}作为输出来训练网络;第四处理模块304,用于把分量{A
L(k)}作为线性网络的输入,{A
L(k+T)}来作为输出来训练网络;第五处理模块305,用于将训练好的小波各分量{D
1(k+T),D
2(k+T),...D
L(k+T),A
L(k+T)}作为BP网络的输入,k+T时刻的原始流量时间{f(k+T)}作为网络输出,训练网络,获取预测输出。优选的,所述第三处理模块中的Elman网络是一种层次性反馈网络,分为输入层、中间层(隐层)、承接层和输出层四层。优选的,所述第五处理模块中的BP网络是一种层次性前馈网络,具有三层或三层以上的神经网络。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上对本发明所提供的一种基于认知网络的网络流量预测方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。